2015-10-21  Nick Clifton  <nickc@redhat.com>

	PR gas/19109
	* configure.ac: Add --enable-compressed-debug-sections with
	options of all, none or ld.
	* configure: Regenerate.
	* config.in: Regenerate.
	* ld.texinfo: Document how to determine the default action for
	debug sections.
	* ldmain.c (main): If DEFAULT_FLAG_COMPRESS_DEBUG is defined then
	set the compress_debug field of the link_info structure to
	zlib-gabi.
	* lexsup.c (elf_static_list_options): Output the default setting
	for the --compress-debug-sections option.
	* NEWS: Mention the new configure option.

2015-10-15  H.J. Lu  <hongjiu.lu@intel.com>

	* ld.texinfo: Fix a typo for "-z noextern-protected-data".

2015-10-15  Simon Dardis  <Simon.Dardis@imgtec.com>

	* ld/ldexp.c: (try_copy_symbol_flags): New. Factored out from...
	(exp_fold_tree_1): Here.  Cope with ternary operator in
	assignments.  Use new helper.

2015-10-14  Nick Clifton  <nickc@redhat.com>

	* po/zh_TW.po: Updated Chinese translation.

2015-10-13  Nick Clifton  <nickc@redhat.com>

	* po/zh_TW.po: Updated Chinese translation.

2015-10-07  Claudiu Zissulescu  <claziss@synopsys.com>
	    Cupertino Miranda  <cmiranda@synopsys.com>

	* configure.tgt: Added target arc-*-elf* and arc*-*-linux-uclibc*.
	* emulparams/arcebelf_prof.sh: New file
	* emulparams/arcebelf.sh: Likewise.
	* emulparams/arceblinux_prof.sh: Likewise.
	* emulparams/arceblinux.sh: Likewise.
	* emulparams/arcelf_prof.sh: Likewise.
	* emulparams/arcelf.sh: Likewise.
	* emulparams/arclinux_prof.sh: Likewise.
	* emulparams/arclinux.sh: Likewise.
	* emulparams/arcv2elfx.sh: Likewise.
	* emulparams/arcv2elf.sh: Likewise.
	* emultempl/arclinux.em: Likewise.
	* scripttempl/arclinux.sc: Likewise.
	* scripttempl/elfarc.sc: Likewise.
	* scripttempl/elfarcv2.sc: Likewise
	* Makefile.am: Add new ARC emulations.
	* Makefile.in: Regenerate.
	* NEWS: Mention the new feature.

2015-10-04  H.J. Lu  <hongjiu.lu@intel.com>

	* configure.tgt (targ_extra_emuls): Add elf_iamcu for Solaris2/x86.

2015-10-01  Kaz Kojima  <kkojima@rr.iij4u.or.jp>

	* configure.tgt (targ_extra_emuls): Remove shlelf and
	shelf from sh*-*-linux cases.

2015-09-30  Rich Felker  <dalias@libc.org>

	* configure.tgt (targ_extra_emuls): Add fdpic and misc
	emulations to sh*-*-linux* targets.

2015-09-29  Nick Clifton  <nickc@redhat.com>

	PR ld/19014
	* ld.texinfo (Options): Fix spelling mistake.

2015-09-24  Alan Modra  <amodra@gmail.com>

	PR ld/18992
	* ldmain.c (main): Always enable --sysroot.
	* emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Don't
	prepend sysroot to relative rpath/runpath.

2015-09-23  Nick Clifton  <nickc@redhat.com>

	* emultempl/elf32.em (ehdr_start_empty): New static variable.
	(before_allocation): Use it to initialise ehdr_start_save.
	* emultempl/pe.em (write_build_id): Remove useless double
	parenthesis.
	* emultempl/pep.em (write_build_id): Likewise.

2015-09-22  H.J. Lu  <hongjiu.lu@intel.com>

	* emultempl/alphaelf.em (alpha_after_parse): Call
	gld${EMULATION_NAME}_after_parse instead of
	after_parse_default.
	* emultempl/cr16elf.em (cr16elf_after_parse): Likewise.
	* emultempl/crxelf.em (crxelf_after_parse); Likewise.
	* emultempl/hppaelf.em (hppaelf_after_parse): Likewise.
	* emultempl/mipself.em (mips_after_parse): Likewise.
	* emultempl/nds32elf.em (nds32_elf_after_parse): Likewise.
	* emultempl/elf32.em: Don't include ldlex.h.
	(gld${EMULATION_NAME}_after_parse): New function.
	(gld${EMULATION_NAME}_handle_option) [GENERATE_PIE_SCRIPT]
	<OPTION_PIE>: Removed.
	(ld_${EMULATION_NAME}_emulation): Replace after_parse_default
	with gld${EMULATION_NAME}_after_parse.
	* emultempl/ia64elf.em (gld${EMULATION_NAME}_after_parse):
	Renamed to ...
	(ia64elf_after_parse): This.  Call
	gld${EMULATION_NAME}_after_parse instead of after_parse_default.
	(LDEMUL_AFTER_PARSE): Replace gld${EMULATION_NAME}_after_parse
	with ia64elf_after_parse.

2015-09-22  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* emulparams/solaris2.sh (GENERATE_PIE_SCRIPT): Set to yes.

	* emultempl/elf32.em: Include ldlex.h.
	(gld${EMULATION_NAME}_handle_option) [GENERATE_PIE_SCRIPT]
	<OPTION_PIE>: Set DF_1_PIE.

2015-09-22  Alan Modra  <amodra@gmail.com>

	* ld.texinfo: Put --dotsyms/--no-dotsyms on separate lines.
	Ditto for --save-restore-funcs and --tls-get-addr-optimize.

2015-09-20  Rich Felker  <dalias@libc.org>

	* ld.texinfo (--no-dynamic-linker): Document.
	* ldlex.h (enum option_values): Add OPTION_NO_DYNAMIC_LINKER.
	* lexsup.c (ld_options, parse_args): Handle --no-dynamic-linker.

2015-09-18  Alan Modra  <amodra@gmail.com>

	* ld.texinfo: Document PowerPC64 --{no-,}save-restore-funcs.

2015-09-18  Alan Modra  <amodra@gmail.com>

	* emultempl/ppc64elf.em (params): Init tls_get_addr_opt field to -1.
	(OPTION_TLS_GET_ADDR_OPT): Define.
	(PARSE_AND_LIST_LONGOPTS): Handle --tls-get-addr-opt.
	(PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Likewise.
	* ld.texinfo: Document --tls-get-addr-optimize and
	--no-tls-get-addr-optimize.

2015-09-18  Alan Modra  <amodra@gmail.com>

	PR ld/18963
	* ldexp.h (struct ldexp_control): Add rel_from_abs.
	(ldexp_finalize_syms): Declare.
	* ldexp.c (new_rel_from_abs): Keep absolute for expressions
	outside of output section statements.  Set rel_from_abs.
	(make_abs, exp_fold_tree, exp_fold_tree_no_dot): Clear rel_from_abs.
	(struct definedness_hash_entry): Add final_sec, and comment.
	(update_definedness): Set final_sec.
	(set_sym_sections, ldexp_finalize_syms): New functions.
	* ldlang.c (lang_process): Call ldexp_finalize_syms.

2015-09-10  Nick Clifton  <nickc@redhat.com>

	* po/zh_CN.po: Updated simplified Chinese translation.

2015-09-09  James Bowman  <james.bowman@ftdichip.com>

	* scripttempl/ft32.sc: default linker script RAM and
        FLASH size symbols

2015-09-09  Nick Clifton  <nickc@redhat.com>

	* po/zh_CN.po: Updated simplified Chinese translation.

2015-09-08  Nick Clifton  <nickc@redhat.com>

	* ld.texinfo (Source Code Reference): Extend description to
	include an example using arrays.

2015-07-28  Andrew Burgess  <andrew.burgess@embecosm.com>

	* ld.h (enum orphan_handling_enum): New.
	(ld_config_type): Remove warn_orphan, add orphan_handling.
	* ldemul.c (ldemul_place_orphan): Remove warning about orphan
	sections.
	* ldlang.c (ldlang_place_orphan): New function.
	(lang_place_orphans): Call ldlang_place_orphan.
	* ldlex.h (enum option_values): Remove OPTION_WARN_ORPHAN and
	OPTION_NO_WARN_ORPHAN, add OPTION_ORPHAN_HANDLING.
	* lexsup.c (ld_options): Remove 'warn-orphan' and
	'no-warn-orphan', add 'orphan-handling'.
	(parse_args): Remove handling for OPTION_WARN_ORPHAN and
	OPTION_NO_WARN_ORPHAN, add handling for OPTION_ORPHAN_HANDLING.
	* NEWS: Replace text about --warn-orphan with --orphan-handling.
	* ld.texinfo (Options): Remove --warn-orphan entry and add
	entry on --orphan-handling.
	(Orphan Sections): Add reference to relevant command line options.

2015-09-03  Nick Clifton  <nickc@redhat.com>

	* ld.texinfo (--build-id): Fix typo.  The COFF/PE build-id section
	is called .buildid not .build-id.

2015-09-03  Nick Clifton  <nickc@redhat.com>

	(Source Code Reference): Fix off-by-one typo in example of how to
	use linker script symbols in C source code.

2015-08-19  Alan Modra  <amodra@gmail.com>

	* emultempl/aix.em: Don't set link_info.pic.
	* emultempl/pe.em: Likewise.
	* emultempl/pep.em: Likewise.
	* emultempl/sunos.em: Likewise.
	* lexsup.c (parse_args): Likewise.  Set type_pie for -pie.
	* plugin.c (set_tv_header <LDPT_LINKER_OUTPUT>): Simplify.

2015-08-18  H.J. Lu  <hongjiu.lu@intel.com>

	* ld/ldctor.c: Replace shared, executable, relocatable and pie
	fields with bfd_link_executable, bfd_link_dll,
	bfd_link_relocatable, bfd_link_pic and bfd_link_pie.
	* ld/ldemul.c: Likewise.
	* ld/ldfile.c: Likewise.
	* ld/ldlang.c: Likewise.
	* ld/ldmain.c: Likewise.
	* ld/ldwrite.c: Likewise.
	* ld/lexsup.c: Likewise.
	* ld/pe-dll.c: Likewise.
	* ld/plugin.c: Likewise.
	* ld/emultempl/aarch64elf.em: Likewise.
	* ld/emultempl/aix.em: Likewise.
	* ld/emultempl/alphaelf.em: Likewise.
	* ld/emultempl/armcoff.em: Likewise.
	* ld/emultempl/armelf.em: Likewise.
	* ld/emultempl/avrelf.em: Likewise.
	* ld/emultempl/beos.em: Likewise.
	* ld/emultempl/cr16elf.em: Likewise.
	* ld/emultempl/elf-generic.em: Likewise.
	* ld/emultempl/elf32.em: Likewise.
	* ld/emultempl/genelf.em: Likewise.
	* ld/emultempl/generic.em: Likewise.
	* ld/emultempl/gld960.em: Likewise.
	* ld/emultempl/gld960c.em: Likewise.
	* ld/emultempl/hppaelf.em: Likewise.
	* ld/emultempl/irix.em: Likewise.
	* ld/emultempl/linux.em: Likewise.
	* ld/emultempl/lnk960.em: Likewise.
	* ld/emultempl/m68hc1xelf.em: Likewise.
	* ld/emultempl/m68kcoff.em: Likewise.
	* ld/emultempl/m68kelf.em: Likewise.
	* ld/emultempl/metagelf.em: Likewise.
	* ld/emultempl/mipself.em: Likewise.
	* ld/emultempl/mmo.em: Likewise.
	* ld/emultempl/msp430.em: Likewise.
	* ld/emultempl/nds32elf.em: Likewise.
	* ld/emultempl/needrelax.em: Likewise.
	* ld/emultempl/nios2elf.em: Likewise.
	* ld/emultempl/pe.em: Likewise.
	* ld/emultempl/pep.em: Likewise.
	* ld/emultempl/ppc32elf.em: Likewise.
	* ld/emultempl/ppc64elf.em: Likewise.
	* ld/emultempl/sh64elf.em: Likewise.
	* ld/emultempl/solaris2.em: Likewise.
	* ld/emultempl/spuelf.em: Likewise.
	* ld/emultempl/sunos.em: Likewise.
	* ld/emultempl/tic6xdsbt.em: Likewise.
	* ld/emultempl/ticoff.em: Likewise.
	* ld/emultempl/v850elf.em: Likewise.
	* ld/emultempl/vms.em: Likewise.
	* ld/emultempl/vxworks.em: Likewise.

2015-08-18  Alan Modra  <amodra@gmail.com>

	* ldexp.c (exp_fold_tree_1): Clear linker_def on symbol assignment.

2015-08-06  Alan Modra  <amodra@gmail.com>

	* ldexp.c (align_dot_val): Delete.
	(fold_unary <ALIGN_K, NEXT>): Revert 2015-07-10 change.
	(is_align_conditional): Revert 2015-07-20 change.
	(exp_fold_tree_1): Likewise, but keep expanded comment.
	* scripttempl/elf.sc (.ldata, .bss): Revert 2015-07-20 change.
	* ld.texinfo (<ALIGN>): Correct description.

2015-08-04  Andrew Burgess  <andrew.burgess@embecosm.com>

	* ld.texinfo (Options): Document --require-defined option.
	* ldlang.c (struct require_defined_symbol): New structure.
	(require_defined_symbol_list): New variable.
	(ldlang_add_require_defined): New function.
	(ldlang_check_require_defined_symbols): New function.
	(lang_process): Check required symbols are defined.
	* ldlang.h (ldlang_add_require_defined): Declare.
	* ldlex.h (enum option_values): Add OPTION_REQUIRE_DEFINED_SYMBOL.
	* lexsup.c (ld_options): Add '--require-defined' entry.
	(parse_args): Handle '--requre-defined' entry.
	* NEWS: Mention new '--require-defined' option.

2015-08-03  Andrew Burgess  <andrew.burgess@embecosm.com>

	* ld.texinfo (MEMORY): Explain that multiple MEMORY commands are
	acceptable.

2015-07-29  H.J. Lu  <hongjiu.lu@intel.com>

	* lexsup.c (parse_args): Don't set link_info.executable to
	TRUE for link_info.relocatable.

2015-07-27  H.J. Lu  <hongjiu.lu@intel.com>

	* configure: Regenerated.

2015-07-24  Nick Clifton  <nickc@redhat.com>

	* emulparams/elf32rl78.sh (OTHER_SECTIONS): Provide a value for
	the _-rl78_abs__ symbol.

2015-07-20  Alan Modra  <amodra@gmail.com>

	* emulparams/criself.sh (INIT_ADDR, FINI_ADDR): Define.
	(INIT_START, FINI_START): Don't ALIGN.
	* scriptempl/elf.sc (.init, .fini): Apply INIT_ADDR/FINI_ADDR.

2015-07-20  Alan Modra  <amodra@gmail.com>

	* scripttempl/elf.sc (.ldata, .bss): Align absolute value of dot.
	* ldexp.c (is_align_conditional): Handle binary ALIGN.
	(exp_fold_tree_1): Move code setting SEC_KEEP for assignments to
	dot inside output sections.  Handle absolute expressions.

2015-07-14  H.J. Lu  <hongjiu.lu@intel.com>

	* emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Make
	--compress-debug-sections=zlib the same as
	--compress-debug-sections=zlib-gabi.
	* ld.texinfo: Change --compress-debug-sections=zlib to zlib-gabi.

2015-07-14  Nick Clifton  <nickc@redhat.com>

	* ld.texinfo (Options): Add missing period after @xref.

2015-07-10  Alan Modra  <amodra@gmail.com>

	* ldexp.c (align_dot_val): New function.
	(fold_unary <ALIGN_K, NEXT>): Use it.

2015-07-03   Kai Tietz  <ktietz@redhat.com>

	PR ld/11539
	* scripttempl/pep.sc: Mark .idata*, .CRT*, .tls*,
	.rsrc*, .init, .ctor*, .dtor*, .fini, .jcr,
	.eh_frame, .pdata. .xdata, and .gcc_except_table sections
	as KEEP.
	* scripttempl/pe.sc: Likewise.
	* ld.texinfo: Document that --gc-sections has experimental support
	for COFF and PE targets.
	* NEWS: Mention experimental support.

2015-07-03  Alan Modra  <amodra@gmail.com>

	* Makefile.am (eelf32or1k.c, eelf32or1k_linux.c): Depend on ELF_DEPS.
	* Makefile.in: Regenerate.

2015-06-28  H.J. Lu  <hongjiu.lu@intel.com>

	* emultempl/elf32.em  (gld${EMULATION_NAME}_handle_option):
	Replace COMPRESS_DEBUG_ZLIB with COMPRESS_DEBUG_GNU_ZLIB.

2015-06-26  H.J. Lu  <hongjiu.lu@intel.com>

	* emulparams/elf_iamcu.sh (COMPILE_IN): New.

2015-06-15  Nick Clifton  <nickc@redhat.com>

	PR ld/18466
	* emultempl/pe.em (pe_find_data_imports): Generate an error if a
	symbol name is too long to handle.
	* emultempl/pep.em (pep_find_data_imports): Likewise.

2015-06-12  Tristan Gingold  <gingold@adacore.com>

	* NEWS: Mention new option.
	* lexsup.c (parse_args): Handle --print-memory-usage.
	(ld_options): Add --print-memory-usage.
	* ldmain.c (main): Call lang_print_memory_usage.
	* ldlex.h (enum option_values): Add OPTION_PRINT_MEMORY_USAGE.
	* ldlang.h: Add prototype of lang_print_memory_usage.
	* ldlang.c (lang_print_memory_size, lang_print_memory_usage): New
	functions.
	* ld.texinfo (Options): Document --print-memory-usage.
	* ld.h (args_type): Add print_memory_usage field.

2015-06-08  Nick Clifton  <nickc@redhat.com>

	* po/fr.po: Updated French Translation.

2015-05-28  Catherine Moore  <clm@codesourcery.com>
	    Paul Brook <paul@codesourcery.com>

	* emultempl/elf32.em (gld${EMULATION_NAME}_after_open):
	Add Compact EH support.
	* scripttempl/elf.sc: Handle .eh_frame_entry and .gnu_extab
	sections.

2015-05-17  Chung-Lin Tang  <cltang@codesourcery.com>

	* configure.ac (AC_PROG_GREP): Check for grep program.
	(elf_list_options,elf_shlib_list_options,elf_plt_unwind_list_options):
	Enable ELF option printing for emulations containing
	'TEMPLATE_NAME=elf32'.
	* configure: Regenerate.

2015-05-14  Nick Clifton  <nickc@redhat.com>

	* ld.texinfo (ASSERT): Describe the interaction with PROVIDEd
	symbols.

2015-05-11  H.J. Lu  <hongjiu.lu@intel.com>

	* configure.tgt: Support i[3-7]86-*-elfiamcu target.

2015-05-11  H.J. Lu  <hongjiu.lu@intel.com>

	* Makefile.am (ALL_EMULATION_SOURCES): Add eelf_iamcu.c.
	(eelf_iamcu.c): New.
	* configure.tgt (targ_extra_emuls): Add elf_iamcu if elf_i386 is
	enabled in BFD.
	* Makefile.in: Regenerated.
	* emulparams/elf_iamcu.sh: New file.

2015-05-05  Nick Clifton  <nickc@redhat.com>

	* emulparams/msp430elf.sh (TEMPLATE_NAME): Change to msp430.
	* scripttempl/msp430.sc (.text): Add .lower.text and .either.text.
	(.data): Add .lower.data and .either.data.
	(.bss): Add .lower.bss and .either.bss.
	(.rodata): Add .lower.rodata and .either.rodata.
	* emultempl/msp430.em: New file.  Implements a new orphan
	placement algorithm that divides sections between lower and upper
	memory regions.
	* Makefile.am (emsp430elf.c): Depend upon msp430.em.
	*emsp430X.c): Likewise.
	* Makefine.in: Regenerate.

2015-04-28  Andreas Schwab  <schwab@linux-m68k.org>

	PR ld/18344
	* ldlex.l (INPUTLIST): Increment lineno on newline.

2015-04-24  Alan Modra  <amodra@gmail.com>

	* emultempl/ppc64elf.em (gld${EMULATION_NAME}_after_allocation):
	Call gld${EMULATION_NAME}_map_segments regardless of need_laying_out.

2015-04-24  DJ Delorie  <dj@redhat.com>

	* Makefile.am (msp430): Rename primary emulation to msp430elf.
	(emsp430.c): Rename to emsp430elf.c, update dependencies
	(emsp430X.c): Update dependencies.
	* Makefile.in: Likewise.
	* configure.tgt (msp430-*-*): Rename primary emulation to msp430elf.
	* emulparams/msp430.sh: Rename to msp430elf.sh.
	* emulparams/msp430X.sh: Update.

2015-04-23  H.J. Lu  <hongjiu.lu@intel.com>

	PR binutils/18209
	* ldfile.c (ldfile_try_open_bfd): Set is_linker_input to 1.

2015-04-23  Alan Modra  <amodra@gmail.com>

	* emulparams/elf64ppc.sh (GOT): Align.

2015-04-22  Alan Modra  <amodra@gmail.com>

	* ldexp.h (struct ldexp_control): Delete dataseg.min_base.  Add
	data_seg.relro_offset.
	* ldexp.c (fold_binary <DATA_SEGMENT_ALIGN>): Don't set min_base.
	(fold_binary <DATA_SEGMENT_RELRO_END>): Do set relro_offset.
	* ldlang.c (lang_size_sections): Rewrite code adjusting relro
	segment base to line up last section on page boundary.

2015-04-15  H.J. Lu  <hongjiu.lu@intel.com>

	* NEWS: Mention
	--compress-debug-sections=[none|zlib|zlib-gnu|zlib-gabi].

2015-04-14  H.J. Lu  <hongjiu.lu@intel.com>

	* ld.texinfo: Document --compress-debug-sections=.
	* ldmain.c (main): Set BFD_COMPRESS on output_bfd if
	COMPRESS_DEBUG is set.  Set BFD_COMPRESS_GABI on output_bfd
	for COMPRESS_DEBUG_GABI_ZLIB.
	* lexsup.c (elf_static_list_options): Add
	--compress-debug-sections=.
	* emultempl/elf32.em (OPTION_COMPRESS_DEBUG): New.
	(xtra_long): Add "compress-debug-sections".
	(gld${EMULATION_NAME}_handle_option): Handle
	OPTION_COMPRESS_DEBUG.

2015-04-14  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/pr17709
	* ld.texinfo: Document "-z noextern-protected-data".
	* ldmain.c (main): Initialize link_info.extern_protected_data
	to -1.
	* lexsup.c (elf_shlib_list_options): Add
	"-z [no]extern-protected-data".
	* emulparams/elf32_x86_64.sh: Source extern_protected_data.sh.
	* emulparams/elf_i386.sh: Likewise.
	* emulparams/elf_i386_be.sh: Likewise.
	* emulparams/elf_i386_chaos.sh: Likewise.
	* emulparams/elf_i386_ldso.sh: Likewise.
	* emulparams/elf_i386_vxworks.sh: Likewise.
	* emulparams/elf_k1om.sh: Likewise.
	* emulparams/elf_l1om.sh: Likewise.
	* emulparams/elf_x86_64.sh: Source extern_protected_data.sh.
	(PARSE_AND_LIST_OPTIONS): Renamed to ...
	(PARSE_AND_LIST_OPTIONS_BNDPLT): This.
	(PARSE_AND_LIST_ARGS_CASE_Z): Renamed to ...
	(PARSE_AND_LIST_ARGS_CASE_Z_BNDPLT): This.
	(PARSE_AND_LIST_OPTIONS): Append $PARSE_AND_LIST_OPTIONS_BNDPLT.
	(PARSE_AND_LIST_ARGS_CASE_Z): Append
	$PARSE_AND_LIST_ARGS_CASE_Z_BNDPLT.
	* emulparams/extern_protected_data.sh: New file.

2015-04-11  H.J. Lu  <hongjiu.lu@intel.com>

	* plugin.c (plugin_load_plugins): Removed an extra ';'.

2015-04-10  Nick Clifton  <nickc@redhat.com>

	PR binutils/18198
	* ld.texinfo (--be8): Add a note about the interaction of this
	option with the assembler's -EB option.

2015-04-10  Alan Modra  <amodra@gmail.com>

	* configure.ac: Set elf_list_options etc. in proper case.
	* configure: Regenerate.

2015-04-10  Alan Modra  <amodra@gmail.com>

	PR ld/18223
	* ldlang.c (lang_process): Add _init and _fini to gc_sym_list.

2015-04-09  H.J. Lu  <hongjiu.lu@intel.com>

	* emulparams/elf_x86_64.sh (BNDPLT): Removed.
	(PARSE_AND_LIST_OPTIONS): New.
	(PARSE_AND_LIST_ARGS_CASE_Z): Likewise.
	* emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Remove
	BNDPLT check.  Handle PARSE_AND_LIST_ARGS_CASE_Z.
	(gld${EMULATION_NAME}_list_options): Remove BNDPLT check.

2015-04-09  Nick Clifton  <nickc@redhat.com>

	* po/fr.po: Updated French translation.

2015-04-08  H.J. Lu  <hongjiu.lu@intel.com>

	* configure.ac (elf_list_options): Set to TRUE for
	--enable-targets=all.
	(elf_shlib_list_options): Likewise.
	(elf_plt_unwind_list_options): Likewise.
	* configure: Regenerated.

2015-04-08  H.J. Lu  <hongjiu.lu@intel.com>

	* emulparams/elf32bmipn32-defs.sh: Skip empty EMULATION_NAME.

2015-04-08  H.J. Lu  <hongjiu.lu@intel.com>

	* Makefile.am (ELF_CLFAGS): New.
	(AM_CFLAGS): Add $(ELF_CLFAGS).
	* configure.ac (elf_list_options): New.  AC_SUBST.
	(elf_shlib_list_options): Likewise.
	(elf_plt_unwind_list_options): Likewise.
	* lexsup.c (elf_shlib_list_options): New.
	(elf_static_list_options): Likewise.
	(elf_plt_unwind_list_options): Likewise.
	(ld_list_options): Likewise.
	(help): Call ld_list_options.
	* Makefile.in: Regenerated.
	* configure: Likewise.
	* emulparams/plt_unwind.sh (PLT_UNWIND): New.
	(PARSE_AND_LIST_OPTIONS): Removed.
	* emultempl/elf32.em (gld_list_options): New.
	(gld${EMULATION_NAME}_list_options): Define only if BNDPLT or
	PARSE_AND_LIST_OPTIONS is defined.
	(ld_${EMULATION_NAME}_emulation): Replace
	gld${EMULATION_NAME}_list_options with ${gld_list_options.

2015-04-07  Alan Modra  <amodra@gmail.com>

	PR ld/18176
	* ldlang.c (lang_size_sections): Cast shift expression.

2015-04-07  Alan Modra  <amodra@gmail.com>

	* emultempl/ppc32elf.em: Handle --no-pic-fixup.
	(params): Init new field.
	(ppc_before_allocation): Enable relaxation for pic_fixup.

2015-04-07  Nick Clifton  <nickc@redhat.com>

	* ld.h (struct ld_config_type): Add new field: warn_orphan.
	* ldlex.h (enum option_values): Add OPTION_WARN_ORPHAN and
	OPTION_NO_WARN_ORPHAN.
	* lexsup.c (ld_options): Add --warn-orphan and --no-warn-orphan.
	(parse_args): Handle the new options.
	* ldemul.c (ldemul_place_orphan): If requested, generate a warning
	message when an orphan section is placed in the output file.
	* ld.texinfo: Document the new option.
	* NEWS: Mention the new feature.

2015-04-02  Andrew Turner <andrew@freebsd.org>

	* Makefile.am: Add FreeBSD aarch64 files.
	* Makefile.in: Regenerate.
	* configure.tgt: Add aarch64-*-freebsd* target triple.
	* emulparams/aarch64fbsd.sh: New file.
	* emulparams/aarch64fbsdb.sh: New file.

2015-04-01  H.J. Lu  <hongjiu.lu@intel.com>

	* emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Work
	around a GCC uninitialized warning bug fixed in GCC 4.6.

2015-04-01  Tejas Belagod  <tejas.belagod@arm.com>

	* emultempl/aarch64elf.em
	(aarch64_elf_create_output_section_statements): Add parameter in
	bfd_elf${ELFSIZE}_aarch64_set_options call.
	(OPTION_FIX_ERRATUM_843419): Define.
	(PARSE_AND_LIST_LONGOPTS): Add fix-cortex-a53-843419.
	(PARSE_AND_LIST_ARGS_CASES): Add OPTION_FIX_ERRATUM_843419.

2015-04-01  Chen Gang  <gang.chen.5i5j@gmail.com>

	* emulparams/elf32_tic6x_le.sh: Skip OTHER_BSS_SECTIONS for
	relocating operation.

2015-04-01  Alan Modra  <amodra@gmail.com>

	PR ld/18176
	* ldlang.c (lang_size_sections): When alignment of sections
	results in relro base adjustment being too large, don't go lower
	than the initial value.
	* ldexp.c (fold_binary <DATA_SEGMENT_RELRO_END>): Comment.
	* scripttempl/elf.sc (DATA_SEGMENT_ALIGN): Omit SEGMENT_SIZE
	alignment when SEGMENT_SIZE is the same as MAXPAGESIZE.

2015-04-01  Alan Modra  <amodra@gmail.com>

	* emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Don't
	init ehdr_start_save.

2015-04-01  Alan Modra  <amodra@gmail.com>

	* Makefile.am (eelf32ppcvxworks.c): Depend on ppc32elf.em and
	ldemul-list.h.
	(eelf32lppc.c, eelf32lppclinux.c, eelf32lppcnto.c, eelf32lppcsim.c,
	eelf32ppc.c, eelf32ppc_fbsd.c, eelf32ppclinux.c, eelf32ppcnto.c,
	eelf32ppcsim.c): Rearrange deps for consistency.
	* Makefile.in: Regenerate.

2015-04-01  Ed Schouten  <ed@nuxi.nl>

	* emultempl/elf32.em (gld*_before_allocation): Zero-initialize
	the ehdr_start_save variable.

2015-03-31  Ed Schouten  <ed@nuxi.nl>

	* Makefile.am (ALL_64_EMULATION_SOURCES): Add
	eelf_x86_64_cloudabi.c.
	(eelf_x86_64_cloudabi.c): New.
	* configure.tgt (targ_emul): Set to elf_x86_64_cloudabi for
	x86_64-*-cloudabi*.
	* Makefile.in: Regenerated.
	* emulparams/elf_x86_64_cloudabi.sh: New file.

2015-03-31  H.J. Lu  <hongjiu.lu@intel.com>

	* configure.ac (AM_ZLIB): Removed.
	* Makefile.in: Regenerated.
	* config.in: Likewise.
	* configure: Likewise.

2015-03-24  Marcus Shawcroft  <marcus.shawcroft@arm.com>

	* emultempl/aarch64elf.em (_aarch64_add_stub_section): Set section
	alignment to 2.

2015-03-23  Marcus Shawcroft  <marcus.shawcroft@arm.com>

	* emultempl/aarch64elf.em
	(elf${ELFSIZE}_aarch64_add_stub_section): Adjust layout.

2015-03-18  Chen Gang  <gang.chen.5i5j@gmail.com>

	* ldmain.c (main): Use %F instead of %X for einfo.

2015-03-02  Alan Modra  <amodra@gmail.com>

	* ld.texinfo (Options <-z nocopyreloc>): Rewrite.

2015-02-27  Nick Clifton  <nickc@redhat.com>

	PR ld/17900
	* ldlang.c (lang_set_flags): Allow exclamation mark to reverse the
	sense of the following memory region attribute characters.

2015-02-27  Alan Modra  <amodra@gmail.com>

	* Makefile.am (ALL_EMULATION_SOURCES): Sort new h8300 entries.
	(eh8300elf_linux.c, eh8300helf_linux.c, eh8300self_linux.c,
	eh8300sxelf_linux.c): Do not invoke genscripts here.
	* Makefile.in: Regenerate.

2015-02-24  Nick Clifton  <nickc@redhat.com>

	* Makefile.am (ev850.c): Add dependency upon
	$(srcdir)/emultempl/v850elf.em.
	(ev850_rh850.c): Likewise.
	* Makefile.in: Regenerate.
	* emultempl/v850elf.em: New file.
	* emulparams/v850.sh (EXTRA_EM_FILE): Define.
	* emulparams/v850_rh850.sh (EXTRA_EM_FILE): Define.
	* scripttempl/v850.sc: Add .note.renesas section.
	* scripttempl/v850_rh850.sc: Likewise.

2015-02-24  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>

	* scripttempl/avr.sc: Add new user_signatures region.  Define and
	use symbols for all region lengths.
	* scripttempl/avrtiny.sc: Define and use symbols for all region
	lengths.

2015-01-21  Yoshinori Sato <ysato@users.sourceforge.jp>

	* Makefile.am: (ALL_EMULATION_SOURCES): Add new emulations.
	* Makefile.in: Regenerate.
	* configure.tgt: Add h8300-*-linux
	* emulparams/h8300elf_linux.sh: Add new emulation.
	* emulparams/h8300helf_linux.sh: Likewise.
	* emulparams/h8300self_linux.sh: Likewise.
	* emulparams/h8300sxelf_linux.sh: Likewise.

2015-02-23  Nick Clifton  <nickc@redhat.com>

	* lexsup.c (parse_args): Produce a more reasonable error message
	when -ixxx or -rxxx is the last option on the linker command line.

2015-02-14  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/17973
	* testplug2.c (allsymbolsread_silent): New.
	(set_register_hook): Handle allsymbolsreadsilent.
	(onall_symbols_read): Skip a message if allsymbolsread_silent is
	TRUE.

2015-02-14  Alan Modra  <amodra@gmail.com>

	PR ld/17973
	* ldlang.h (struct lang_input_statement_flags): Add lto_output.
	* ldlang.c (lang_process): Don't set loading_lto_outputs.
	* ldfile.c (ldfile_try_open_bfd): Transfer entry flags.lto_output
	to bfd.
	* plugin.c (add_input_file, add_input_library): Set flags.lto_output.

2015-02-13  H.J. Lu  <hongjiu.lu@intel.com>

	* NEWS: Mention support for LLVM plugin.

2015-02-13  Alan Modra  <amodra@gmail.com>

	* ld.texinfo (Options <--defsym>): Correct cross reference.

2015-02-11  H.J. Lu  <hongjiu.lu@intel.com>

	* lexsup.c (ld_options): Add --[no-]map-whole-files for gold
	option compatibility.

2015-02-11  H.J. Lu  <hongjiu.lu@intel.com>

	* plugin.c (message): Output "warning:" for LDPL_WARNING. Output
	"error:" for LDPL_FATAL and LDPL_ERROR.
	* testplug2.c (parse_option): Handle fatal, error and warning.

2015-02-11  H.J. Lu  <hongjiu.lu@intel.com>

	* testplug2.c (dump_tv_tag): Removed.
	(onall_symbols_read): Return LDPS_ERR if the file descriptor isn't
	closed.
	* testplug3.c (dump_tv_tag): Removed.
	(onclaim_file): Fix typo.

2015-02-11  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/17878
	* Makefile.am (noinst_LTLIBRARIES): Add libldtestplug2.la and
	libldtestplug3.la.
	(libldtestplug2_la_SOURCES): New.
	(libldtestplug2_la_CFLAGS): Likewise.
	(libldtestplug2_la_LDFLAGS): Likewise.
	(libldtestplug3_la_SOURCES): New.
	(libldtestplug3_la_CFLAGS): Likewise.
	(libldtestplug3_la_LDFLAGS): Likewise.
	* Makefile.in: Regenerated.
	* testplug2.c: New file.
	* testplug3.c: Likewise.

2015-02-11  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/17878
	* plugin.c: Include ../bfd/plugin.h.
	(plugin_get_ir_dummy_bfd): Call bfd_create with
	link_info.output_bfd instead of srctemplate.  Copy BFD info
	from srctemplate only if it doesn't use BFD plugin target
	vector.
	(plugin_load_plugins): Call register_ld_plugin_object_p with
	(plugin_object_p)
	(plugin_maybe_claim): Renamed to ...
	(plugin_object_p): This.  Return dummy BFD target vector if
	input is calimed by plugin library, otherwise return NULL.
	Update plugin_format and plugin_dummy_bfd.
	(plugin_maybe_claim): New.  Use plugin_object_p.

2015-02-10  H.J. Lu  <hongjiu.lu@intel.com>

	* plugin.c (plugin_maybe_claim): Initialize use_mmap.

2015-02-10  H.J. Lu  <hongjiu.lu@intel.com>

	* plugin.c (plugin_input_file_t): Add use_mmap.
	(plugin_pagesize): New.
	(get_view): Use plugin_pagesize.  Set use_mmap if mmap is used.
	(plugin_load_plugins): Initialize plugin_pagesize.
	(plugin_maybe_claim): Unmap the buffer if plugin didn't claim the
	file.

2015-02-10  H.J. Lu  <hongjiu.lu@intel.com>

	* plugin.c (get_view): Align offset passed to mmap.

2015-02-08  H.J. Lu  <hongjiu.lu@intel.com>

	* ldfile.c (ldfile_try_open_bfd): Don't call bfd_check_format
	if plugin isn't active or there is no thing more to claim.

2015-02-08  H.J. Lu  <hongjiu.lu@intel.com>

	* plugin.c (plugin_maybe_claim): Check format against bfd_object
	directly.

2015-02-07  H.J. Lu  <hongjiu.lu@intel.com>

	* plugin.c (plugin_maybe_claim): Replace entry->the_bfd with
	ibfd.

2015-02-07  H.J. Lu  <hongjiu.lu@intel.com>

	* plugin.c: Include "libbfd.h".
	(plugin_strdup): New.
	(plugin_maybe_claim): Remove the argument of pointer to struct
	ld_plugin_input_file.  Open and handle input entry.
	* plugin.h (plugin_maybe_claim): Updated.
	* ldfile.c (ldfile_try_open_bfd): Call plugin_maybe_claim directly
	without passing a pointer to struct ld_plugin_input_file.
	* ldmain.c: Don't include "libbfd.h".
	(add_archive_element): Call plugin_maybe_claim directly without
	passing a pointer to struct ld_plugin_input_file.

2015-02-06  H.J. Lu  <hongjiu.lu@intel.com>

	* ld.texinfo: Document -z text, -z notext and -z textoff.
	* emultempl/elf32.em (gld${EMULATION_NAME}_list_options): Add
	-z text, -z notext and -z textoff.

2015-02-06  H.J. Lu  <hongjiu.lu@intel.com>

	* configure.ac: Add AC_FUNC_MMAP.
	* config.in: Regenerated.
	* configure: Likewise.
	* plugin.c: Include <sys/mman.h>.
	(MAP_FAILED): New.  Defined if not defined.
	(PROT_READ): Likewise.
	(MAP_PRIVATE): Likewise.
	(view_buffer_t): New.
	(plugin_input_file_t): Add view_buffer.
	(get_view): Try mmap and cache the view buffer.
	(plugin_maybe_claim): Initialize view_buffer.

2015-02-05  H.J. Lu  <hongjiu.lu@intel.com>

	* plugin.c (release_input_file): Set fd to -1 after closing it.
	(plugin_maybe_claim): Close fd only if fd != -1.

2015-02-05  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/17878
	* plugin.c: Include <errno.h>.
	(errno): New.  Declare if needed.
	(plugin_input_file_t): New.
	(get_input_file): Implemented.
	(get_view): Likewise.
	(release_input_file): Likewise.
	(add_symbols): Updated.
	(get_symbols): Likewise.
	(plugin_maybe_claim): Allocate a plugin_input_file_t.  Close fd
	only for a bfd_object input.

2015-02-02  Alan Modra  <amodra@gmail.com>

	* emultempl/ppc64elf.em (toc_section_name): New var.
	(ppc_after_open): Set it.
	(ppc_before_allocation): Use it.
	(gld${EMULATION_NAME}_after_allocation): Here too.

2015-01-29  H.J. Lu  <hongjiu.lu@intel.com>

	* ldfile.c (ldfile_try_open_bfd): Replace plugin_active_plugins_p()
	with link_info.lto_plugin_active.
	* ldlang.c (lang_process): Likewise.
	* ldmain.c (add_archive_element): Likewise.
	* plugin.c (plugin_active_plugins_p): Removed.
	* plugin.h (plugin_active_plugins_p): Likewise.

2015-01-28  H.J. Lu  <hongjiu.lu@intel.com>

	* plugin.h (plugin_get_ir_dummy_bfd): Removed.  Move comments to
	...
	* plugin.c (plugin_get_ir_dummy_bfd): Here.  Make it static.

2015-01-28  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/17878
	* plugin.c (tv_header_tags(): Add LDPT_GET_VIEW.
	(get_view): New function.
	(set_tv_header): Handle LDPT_GET_VIEW.
	* testplug.c (tag_names): Add LDPT_GET_VIEW.
	(tv_get_view): New.
	(dump_tv_tag): Handle LDPT_GET_VIEW.
	(parse_tv_tag): Likewise.

2015-01-28  Alan Modra  <amodra@gmail.com>

	* emulparams/elf64ppc.sh (INITIAL_READWRITE_SECTIONS): Define.
	* emultempl/ppc64elf.em (params): Init new field.
	(ppc_after_open): New function.
	(LDEMUL_AFTER_OPEN): Define.
	* ldlang.c (lang_final): Whitespace fix.

2015-01-28  James Bowman  <james.bowman@ftdichip.com>

	* Makefile.am: Add FT32 files.
	* configure.tgt: Handle FT32 target.
	* emulparams/elf32ft32.sh: New file.
	* scripttempl/ft32.sc: New file.
	* Makefile.in: Regenerate.

2015-01-28  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>

	PR 4643
	* ldexp.c (fold_name): Fold LENGTH only after
	lang_first_phase_enum.
	* ldgram.y (memory_spec): Don't evaluate ORIGIN and LENGTH
	rightaway.
	* ldlang.h (struct memory_region_struct): Add origin_exp and
	length_exp fields.
	* ldlang.c (lang_do_memory_regions): New.
	(lang_memory_region_lookup): Initialize origin_exp and
	length_exp fields.
	(lang_process): Call lang_do_memory_regions.

2015-01-20  Andrew Burgess  <andrew.burgess@embecosm.com>

	* ldlang.c (print_assignment): Only evaluate the expression for a
	PROVIDE'd assignment when the destination is being defined.
	Display a special message for PROVIDE'd symbols that are not being
	provided.

2015-01-20  Alan Modra  <amodra@gmail.com>

	* emulparams/elf64ppc.sh (OTHER_SDATA_SECTIONS): Use in place of..
	(OTHER_BSS_SYMBOLS): ..this.
	(OTHER_PLT_RELOC_SECTIONS): Don't define.
	(OTHER_GOT_RELOC_SECTIONS): Add rela.toc1 and rela.tocbss.
	(OTHER_READWRITE_SECTIONS): Don't define.  Move .toc1 to..
	(OTHER_RELRO_SECTIONS_2): ..here.
	* scripttempl/elf.sc: Move SBSS too when DATA_SDATA.

2015-01-20  Alan Modra  <amodra@gmail.com>

	* emulparams/elf64ppc.sh (BSS_PLT): Don't define.
	(OTHER_READWRITE_SECTIONS): Move .branch_lt to..
	(OTHER_RELRO_SECTIONS_2): ..here.
	(DATA_GOT, SEPARATE_GOTPLT, DATA_SDATA, DATA_PLT,
	PLT_BEFORE_GOT): Define.
	* scripttempl/elf.sc: Handle DATA_SDATA and DATA_GOT/DATA_PLT/
	PLT_BEFORE_GOT combination.
	(DATA_GOT, SDATA_GOT): Don't define if either is already defined.

2015-01-20  Alan Modra  <amodra@gmail.com>

	* emulparams/elf64ppc.sh (OTHER_READWRITE_SECTIONS): Move .opd to..
	(OTHER_RELRO_SECTIONS_2): ..here, new define.
	* scripttempl/elf.sc: Add OTHER_RELRO_SECTIONS_2.

2015-01-19  Alan Modra  <amodra@gmail.com>

	PR ld/17615
	* ldlang.c (lang_process): Run lang_common before lang_gc_sections.

2015-01-14  Jiong Wang  <jiong.wang@arm.com>

	* ld-arm/elf32-reject.s: New testcase.
	* ld-arm/elf32-reject.d: Likewise.
	* ld-arm/elf32-reject-pie.s: Likewise.
	* ld-arm/elf32-reject-pie.d: Likewise.
	* ld-arm/arm-elf.exp: Run new testcases.
	* ld-arm/ifunc-7.s: Delete f2/f4 test items.
	* ld-arm/ifunc-7.rd: Likewise.
	* ld-arm/ifunc-7.gd: Likewise.
	* ld-arm/ifunc-7.dd: Likewise.
	* ld-arm/ifunc-8.s: Likewise.
	* ld-arm/ifunc-8.rd: Likewise.
	* ld-arm/ifunc-8.gd: Likewise.
	* ld-arm/ifunc-8.dd: Likewise.

2015-01-01  Alan Modra  <amodra@gmail.com>

	* ldver.c (ldversion): Just print current year.

2015-01-01  Alan Modra  <amodra@gmail.com>

	Update year range in copyright notice of all files.

For older changes see ChangeLog-2014

Copyright (C) 2015 Free Software Foundation, Inc.

Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.

Local Variables:
mode: change-log
left-margin: 8
fill-column: 74
version-control: never
End:
